This chapter presents the requirements and recommendations for audio devices under the Microsoft Windows family of operating system.
For PC 97, the important design issues for basic audio under Microsoft Windows are to ensure a complete Plug and Play experience for end users and to ensure that audio capabilities meet minimum standards.
Microsoft DirectSound technology provides APIs for low-latency mixing, hardware acceleration, and direct access to the sound device, while maintaining compatibility with earlier Windows-based applications and device drivers. DirectSound provides a device-independent interface that application developers can use to take advantage of any hardware capabilities. The device driver reports the capabilities of the hardware to DirectSound and passes DirectSound requests to the hardware.
Note For additional Entertainment PC 97 and DVD-related audio requirements, see the section on DVD playback requirements in the "Video Components" chapter in Part 4 of this guide.
This section summarizes the hardware requirements for audio for PC 97 system designs.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Recommended | Recommended | Advanced audio required |
If baseline audio capabilities are included in a PC system, audio must meet the minimum requirements defined in "Basic Requirements for Audio Components" in this chapter.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Recommended | Recommended | Required |
Each feature for Advanced audio that is implemented in a PC 97 system must meet the minimum requirements for that feature as defined in "PC 97 Advanced Audio" in this chapter.
This section defines requirements for basic hardware features for audio components and the specific features for PC 97. Device performance is measured by the WHQL Audio Compatibility Tests (ACT). ACT currently measures performance of the driver/hardware combination for opening, closing, and resetting the device.
Note WHQL compatibility tests are revised quarterly. To ensure that you have the most recent ACT, see http://www.microsoft.com/hwtest/outtest.htm.
This section defines the requirements for baseline audio, which is typically implemented as a system board solution for business PCs. Although audio is not required on a PC 97 Basic or Workstation system, if baseline audio is implemented in the system it must meet the requirements defined in this section.
Required |
These include the standard PC 97 requirements for a Plug and Play device identifier, automated software-only settings for device configuration, standard device drivers and Windows-based installation, and icons for external connectors. For more information, see the "Basic PC 97" chapter in Part 2 of this guide.
Required |
Recommended: Support for stereo (required for PC 97 Advanced audio)
Recommended sampling rates: 16 kHz, 32 kHz, and 48 kHz (required for PC 97 Advanced audio)
Required |
Recommended: Support for stereo (required for PC 97 Advanced audio)
Recommended sampling rates: 16 kHz, 32 kHz, and 48 kHz (required for PC 97 Advanced audio)
Required |
At a minimum, the system must include support for one line in and one line out. The minimum line-in support can include 3.5-mm microphone in or 3.5-mm line in. The minimum line-out support can include 3.5-mm headphone out, line out, or speaker out.
Typically, a baseline audio implementation will include additional line-in/line-out support, but this bare minimum is defined to allow alternate solutions for designs sensitive to form-factor issues.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Required | Required | Required |
The following is required for input (record) and output (playback):
For mobile PCs, the signal-to-noise requirement is 75 dB from 20 Hz to 15 kHz, A-weighted.
Signal-to-noise (S/N) ratio is defined as the ratio of the RMS output level with 1 kHz full scale input to the RMS output level with all zeros into the digital input (AES17-1991).
This section defines the guidelines for PC 97 Advanced audio, including guidelines for hardware acceleration features.
Note The requirements in this section do not apply if baseline audio is implemented on the system board. Notice also that if any component of PC 97 Advanced audio is implemented in a system, it must meet the standards defined in this section for that component.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Required | Required | Required |
The requirements for minimum input and output standards are defined in the "Baseline Audio for PC 97" section in this chapter. The following lists the additional related requirements for PC 97 Advanced audio:
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Required | Required | Required |
The PC 97 Advanced audio subsystem must support full duplex operation for simultaneous encoding and decoding of audio data, enabling audio playback while simultaneously supporting audio input.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Recommended | Recommended | Required |
The input (A/D) and output (D/A) portions of the audio subsystem should support independent sampling rates. For example, the audio playback could be set at 44.1 kHz for high-quality audio while the microphone input is sampled at 8 kHz to support a conferencing application.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Required | Required | Required |
This means that the driver must be capable of returning an accurate indication of the current position in the buffer being rendered. Sample accuracy is in relation to the samples given to the codec. Accurate reporting of the current position in the buffer being rendered means reporting position within 1 ms. This will apply for compressed or uncompressed data.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Recommended | Recommended | Required |
Recommended: Hardware support for downloadable samples.
A software or hardware solution can be implemented. This includes supporting, at a minimum, standard MIDI 24-voice polyphony plus 16 timbres for PC 97 Advanced audio.
Basic PC 97 | Workstation 97 | Entertainment PC 97 |
Recommended | Recommended | Required |
Recommended: Hardware provides reference signals on two channels (mono in, mono out).
This feature allows the user to remove speaker content from the incoming microphone input stream. For example, if the user has other audio output mixed with the incoming voice in an audio-conferencing or multiplayer application, all speaker content is removed from the input microphone stream.
This section summarizes requirements related to the design initiatives for PC 97 defined in Part 1 of this guide.
The items in this section are requirements for all PC 97 systems that implement audio in any form.
Required |
Note Each separate device or function that is enumerated by the BIOS on an audio adapter must have a separate Plug and Play device ID and separate resource configuration. If a game port or CD-ROM interface is supplied, resources must be allocated in addition to those required for the audio device. Such devices must also have independent dynamic disable capabilities. For complete information about requirements and exceptions for multifunction cards under PC 97, see the "Basic PC 97" chapter in Part 2 of this guide.
Required |
The system must be capable of automatically assigning, disabling, and relocating the resources used by this device when necessary, using the method required for the related bus class. All configuration settings must be capable of being made through software, with no system reboot required. Changing or adding this device to the system must not require changing jumpers or switches on either the adapter or the system board to set resource assignments. In the event of an irreconcilable conflict with other devices on the system, the system must be able to disable the device to prevent the system from stalling. The device must not claim any resources while disabled.
This section defines requirements if the audio device uses ISA. However, ISA is not a recommended solution for supporting audio in a PC 97 system.
Required |
As for all PC 97 devices, this is required for both onboard and add-on devices. For information, see the "Basic PC 97" chapter in Part 1 of this guide.
Required |
These are the required resource settings for ISA devices:
Recommended: 7 I/O locations
Recommended: 7 IRQ signals
Recommend: 16-bit F-mode DMA
Note Type F DMA is strongly recommended for system-board audio implementations or for add-on devices that use ISA.
Recommended |
Unique IDs with Serial Number fields ensure correct support for multiple instances of the same device type. If unique serial numbers are not supported, the Serial Number field must contain 0xFFFFFFFF, as required in the ISA Plug and Play specification. For more information, see the "ISA" chapter in Part 3 of this guide.
This section defines the hardware requirements if the audio device uses PCI.
Required |
If the device uses PCI, it must meet the requirements defined in the "PCI" chapter in Part 3 of this guide, including requirements for providing a Subsystem ID and Subsystem Vendor ID.
Required |
For complete implementation details, see the PCI v. 2.1 specification.
Required |
Any PCI audio components that use any ISA resources such as DMA, IRQ, or I/O addresses must meet all Plug and Play requirements for ISA, including dynamic disable capabilities, as defined in the "ISA" chapter in Part 3 of this guide. PCI devices on the system board do not have to provide relocatable I/O addresses for the following legacy I/O registers:
Sound Blaster Register (220h22Fh) | MPU-401 register (330h331h) |
---|---|
FM synthesis register (388h38Bh) | WSS-compatible register (534h537h) |
This section defines requirements if the audio device uses USB.
Required |
This device must comply with the Universal Serial Bus Specification (v. 1.0 or higher) and the related USB device class specification. This ensures that all Plug and Play requirements are met and that Microsoft drivers support this device.
This section defines requirements if the audio device uses IEEE 1394.
Required |
For requirements related to IEEE 1394 peripherals, see the "IEEE 1394" chapter in Part 3 of this guide.
This section summarizes the specific power management requirements for audio components.
Required |
The "Device Class Power Management Reference Specification" for audio provides definitions of the OnNow device power states (D0 - D3) for these devices. The specification also covers device functionality expected in each power state and the possible Wakeup event definitions for the class. Power states D0 and D3 are required. Other power states are recommended.
Optional |
For PC 97, the ability to cause a Wakeup event as defined in the "Device Class Power Management Reference Specification" for audio devices is an optional feature.
This section summarizes requirements for device drivers for audio. The items in this section are required for all PC 97 systems.
Required |
The manufacturer does not need to supply a driver if a standard driver provided with the operating system can be used. If the manufacturer supplies drivers, the requirements include the following:
For complete details about standard installation requirements for drivers, see "Basic PC 97" in Part 2 of this guide.
Required |
Any Windows-based applications provided with the device must meet Microsoft requirements for software compatibility as indicated by the "Designed for Microsoft Windows" logo.
The following presents some of the references, services, and tools available to help build hardware that works with Windows operating systems.
WHQL Audio Compatibility Tests
http://www.microsoft.com/hwtest/outtest.htm
Current information on audio design and Windows support
http://www.microsoft.com/hwdev/devdes/
Device Class Power Management Reference Specification
http://www.microsoft.com/hwdev/onnow.htm
Plug and Play specifications
http://www.microsoft.com/hwdev/pnpspecs.htm
Windows 95 DDK, Windows NT DDK, and DirectX DDK
MSDN Professional membership
Basic PC 97 | Workstation PC 97 | Entertainment PC 97 |
System Requirements for Audio Components | ||
---|---|---|
1. Baseline audio meets PC 97 requirements | ||
Recommended | Recommended | Advanced audio |
required | ||
2. PC 97 Advanced audio capabilities included in the PC system | ||
Recommended | Recommended | Required
|
Basic Requirements for Audio Components | ||
Baseline Audio for PC 97 | ||
3. General device requirements for PC 97 | ||
Required | ||
4. Minimum standards for output | ||
Required | ||
5. Minimum standards for input | ||
Required | ||
6. One line out and one line in, minimum | ||
Required | ||
7. Minimum audio performance characteristics | ||
Required | Required | Required
|
PC 97 Advanced Audio | ||
8. Advanced audio meets additional standards for input and output | ||
Required | Required | Required |
9. Full duplex operation | ||
Required | Required | Required |
10. Input and output support independent sampling rates | ||
Recommended | Recommended | Required |
11. Support sample position for stream synchronization | ||
Required | Required | Required |
12. Support for music synthesis | ||
Recommended | Recommended | Required |
13. Support for echo cancellation | ||
Recommended | Recommended | Required
|
PC 97 Design for Audio | ||
Plug and Play for Audio | ||
14. Plug and Play device identifier | ||
Required | ||
15. Automatic resource assignment and dynamic disable capabilities | ||
Required | ||
Requirements for ISA Devices | ||
16. Unique 16-bit address for I/O decode | ||
Required | ||
17. Minimum resource requirements | ||
Required | ||
18. Unique IDs include Serial Number field for each ISA card | ||
Recommended | ||
Requirements for PCI Devices | ||
19. PCI v. 2.1 (or higher) and additional PC 97 requirements | ||
Required | ||
20. Initiator, target, and block transfer support | ||
Required | ||
21. PCI audio components comply with ISA Plug and Play requirements if using ISA resources | ||
Required | ||
Requirements for USB Devices | ||
22. USB Specification and USB audio device class specifications | ||
Required | ||
Requirements for IEEE 1394 Devices | ||
23. Advanced audio meets PC 97 requirements for IEEE 1394 | ||
Required | ||
Power Management for Audio Components | ||
24. Compliance with "Device Class Power Management Reference Specification" for audio devices | ||
Required | ||
25. Support Wakeup Events defined in "Device Class Power Management Reference Specification" | ||
Optional | ||
Device Drivers and Installation for Audio Components | ||
26. Device driver and installation meet Windows and Windows NT standards | ||
Required | ||
27. Applications provided with device meet Windows standards | ||
Required | ||